package org.jeecg.modules.demo.tradeorder.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: tradeorder
 * @Author: jeecg-boot
 * @Date:   2025-07-28
 * @Version: V1.0
 */
@Data
@TableName("tradeorder")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="tradeorder对象", description="tradeorder")
public class Tradeorder implements Serializable {
    private static final long serialVersionUID = 1L;

	/**合同模板类型*/
	@Excel(name = "合同模板类型", width = 15)
    @ApiModelProperty(value = "合同模板类型")
    @Dict(dicCode="contract_template")
    private String templatetype;
	/**成交单编号*/
	@Excel(name = "成交单编号", width = 15)
    @ApiModelProperty(value = "成交单编号")
    private Integer toid;
	/**系统编号*/
	@Excel(name = "系统编号", width = 15)
    @ApiModelProperty(value = "系统编号")
    private Integer sysid;
	/**订单编码*/
	@Excel(name = "订单编码", width = 15)
    @ApiModelProperty(value = "订单编码")
    private String tocode;
	/**挂单编号*/
	@Excel(name = "挂单编号", width = 15)
    @ApiModelProperty(value = "挂单编号")
    private Integer poid;
	/**应单编号*/
	@Excel(name = "应单编号", width = 15)
    @ApiModelProperty(value = "应单编号")
    private Integer aoid;
	/**交易模式*/
	@Excel(name = "交易模式", width = 15)
    @ApiModelProperty(value = "交易模式")
    private Integer trademodeid;
	/**交易流程*/
	@Excel(name = "交易流程", width = 15)
    @ApiModelProperty(value = "交易流程")
    private Integer tradeflowid;
	/**挂单交易商*/
	@Excel(name = "挂单交易商", width = 15)
    @ApiModelProperty(value = "挂单交易商")
    private Integer potraderid;
	/**挂单结算交易商编号*/
	@Excel(name = "挂单结算交易商编号", width = 15)
    @ApiModelProperty(value = "挂单结算交易商编号")
    private Integer posettletraderid;
	/**挂单交易员*/
	@Excel(name = "挂单交易员", width = 15)
    @ApiModelProperty(value = "挂单交易员")
    private Integer pouserid;
	/**应单交易商*/
	@Excel(name = "应单交易商", width = 15)
    @ApiModelProperty(value = "应单交易商")
    private Integer aotraderid;
	/**应单结算交易商编号*/
	@Excel(name = "应单结算交易商编号", width = 15)
    @ApiModelProperty(value = "应单结算交易商编号")
    private Integer aosettletraderid;
	/**应单交易员*/
	@Excel(name = "应单交易员", width = 15)
    @ApiModelProperty(value = "应单交易员")
    private Integer aouserid;
	/**商品实例编号*/
	@Excel(name = "商品实例编号", width = 15)
    @ApiModelProperty(value = "商品实例编号")
    private Integer commodityid;
	/**成交价格*/
	@Excel(name = "成交价格", width = 15)
    @ApiModelProperty(value = "成交价格")
    private BigDecimal toprice;
	/**成交数量*/
	@Excel(name = "成交数量", width = 15)
    @ApiModelProperty(value = "成交数量")
    private BigDecimal toquality;
	/**成交时间*/
	@Excel(name = "成交时间", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "成交时间")
    private Date totime;
	/**成交单状态*/
	@Excel(name = "成交单状态", width = 15)
    @ApiModelProperty(value = "成交单状态")
    private String tostatus;
	/**应单方交易费金额*/
	@Excel(name = "应单方交易费金额", width = 15)
    @ApiModelProperty(value = "应单方交易费金额")
    private BigDecimal aotradefee;
	/**挂单方交易费金额*/
	@Excel(name = "挂单方交易费金额", width = 15)
    @ApiModelProperty(value = "挂单方交易费金额")
    private BigDecimal potradefee;
	/**ID*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "ID")
    private Integer id;
	/**workid*/
	@Excel(name = "workid", width = 15)
    @ApiModelProperty(value = "workid")
    private Integer workid;
	/**worktypeid*/
	@Excel(name = "worktypeid", width = 15)
    @ApiModelProperty(value = "worktypeid")
    private Integer worktypeid;

}
